package com.survey.project.research.domain;

import java.util.Date;

import com.baomidou.mybatisplus.annotation.KeySequence;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.survey.framework.aspectj.lang.annotation.Excel;
import com.survey.framework.web.domain.BaseEntity;
import org.apache.commons.lang.builder.ToStringBuilder;
import org.apache.commons.lang.builder.ToStringStyle;

/**
 * 客户管理对象 sv_consumer
 * 
 * @author survey
 * @date 2021-05-20
 */
@TableName("SV_CONSUMER")
@KeySequence(value = "SEQ_SV_CONSUMER" )
public class Consumer extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** seq_sv_consumer.nextval */
    @TableId(value = "consumer_id")
    private Long consumerId;

    /** 客户姓名 */
    @Excel(name = "客户姓名")
    private String consumerName;

    /** 电话号码 */
    @Excel(name = "电话号码")
    private String mobile;

    /** 性别(0-女,1-男) */
    @Excel(name = "性别(0-女,1-男)",readConverterExp = "0=女,1=男")
    private String sex;

    /** 省份 */
    @Excel(name = "省份")
    private String province;

    /** 城市 */
    @Excel(name = "城市")
    private String city;

    /** 生日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date birthday;

    /** 婚姻状况(0-未婚,1-已婚) */
    @Excel(name = "婚姻状况(0-未婚,1-已婚)",readConverterExp = "0=未婚,1=已婚")
    private String maritalStatus;

    /** 学历 */
    @Excel(name = "学历")
    private String education;

    /** 问卷id */
    @Excel(name = "问卷id")
    private Long questionnaireId;

    /** vin号 */
    @Excel(name = "vin号")
    private String vin;

    /** 产品编号 */
    @Excel(name = "产品编号")
    private String productNo;

    /** 产品名称 */
    @Excel(name = "产品名称")
    private String productName;

    /** 发动机序列号 */
    @Excel(name = "发动机序列号")
    private String engineNo;

    /** 生产日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date productionDate;

    /** 录入经销商名称 */
    @Excel(name = "录入经销商名称")
    private String inputDealerName;

    /** 经销商名称 */
    @Excel(name = "经销商名称")
    private String dealerName;

    /** 经销商类型 */
    @Excel(name = "经销商类型")
    private String dealerType;

    /** 购车经历 */
    @Excel(name = "购车经历")
    private String carBuyExperience;

    /** 问卷填写状态(0-未填,1-已填) */
    @Excel(name = "问卷填写状态(0-未填,1-已填)")
    private String questionnaireStatus;

    /** 删除标志（0代表存在 2代表删除） */
    private String delFlag;

    public void setConsumerId(Long consumerId)
    {
        this.consumerId = consumerId;
    }

    public Long getConsumerId()
    {
        return consumerId;
    }
    public void setConsumerName(String consumerName) 
    {
        this.consumerName = consumerName;
    }

    public String getConsumerName() 
    {
        return consumerName;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setSex(String sex) 
    {
        this.sex = sex;
    }

    public String getSex() 
    {
        return sex;
    }
    public void setProvince(String province) 
    {
        this.province = province;
    }

    public String getProvince() 
    {
        return province;
    }
    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }
    public void setBirthday(Date birthday) 
    {
        this.birthday = birthday;
    }

    public Date getBirthday() 
    {
        return birthday;
    }
    public void setMaritalStatus(String maritalStatus) 
    {
        this.maritalStatus = maritalStatus;
    }

    public String getMaritalStatus() 
    {
        return maritalStatus;
    }
    public void setEducation(String education) 
    {
        this.education = education;
    }

    public String getEducation() 
    {
        return education;
    }

    public Long getQuestionnaireId() {
        return questionnaireId;
    }

    public void setQuestionnaireId(Long questionnaireId) {
        this.questionnaireId = questionnaireId;
    }

    public String getVin()
    {
        return vin;
    }
    public void setProductNo(String productNo) 
    {
        this.productNo = productNo;
    }

    public String getProductNo() 
    {
        return productNo;
    }
    public void setProductName(String productName) 
    {
        this.productName = productName;
    }

    public String getProductName() 
    {
        return productName;
    }
    public void setEngineNo(String engineNo) 
    {
        this.engineNo = engineNo;
    }

    public String getEngineNo() 
    {
        return engineNo;
    }
    public void setProductionDate(Date productionDate) 
    {
        this.productionDate = productionDate;
    }

    public Date getProductionDate() 
    {
        return productionDate;
    }
    public void setInputDealerName(String inputDealerName) 
    {
        this.inputDealerName = inputDealerName;
    }

    public String getInputDealerName() 
    {
        return inputDealerName;
    }
    public void setDealerName(String dealerName) 
    {
        this.dealerName = dealerName;
    }

    public String getDealerName() 
    {
        return dealerName;
    }
    public void setDealerType(String dealerType) 
    {
        this.dealerType = dealerType;
    }

    public String getDealerType() 
    {
        return dealerType;
    }
    public void setCarBuyExperience(String carBuyExperience) 
    {
        this.carBuyExperience = carBuyExperience;
    }

    public String getCarBuyExperience() 
    {
        return carBuyExperience;
    }
    public void setDelFlag(String delFlag) 
    {
        this.delFlag = delFlag;
    }

    public String getDelFlag() 
    {
        return delFlag;
    }

    public String getQuestionnaireStatus() {
        return questionnaireStatus;
    }

    public void setQuestionnaireStatus(String questionnaireStatus) {
        this.questionnaireStatus = questionnaireStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
            .append("consumerId", getConsumerId())
            .append("consumerName", getConsumerName())
            .append("mobile", getMobile())
            .append("sex", getSex())
            .append("province", getProvince())
            .append("city", getCity())
            .append("birthday", getBirthday())
            .append("maritalStatus", getMaritalStatus())
            .append("education", getEducation())
            .append("questionnaireId", getQuestionnaireId())
            .append("vin", getVin())
            .append("productNo", getProductNo())
            .append("productName", getProductName())
            .append("engineNo", getEngineNo())
            .append("productionDate", getProductionDate())
            .append("inputDealerName", getInputDealerName())
            .append("dealerName", getDealerName())
            .append("dealerType", getDealerType())
            .append("carBuyExperience", getCarBuyExperience())
            .append("delFlag", getDelFlag())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .toString();
    }
}
